<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head><!-- start favicons snippet, use https://realfavicongenerator.net/ --><link rel="apple-touch-icon" sizes="180x180" href="/assets/apple-touch-icon.png"><link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon-16x16.png"><link rel="manifest" href="/assets/site.webmanifest"><link rel="mask-icon" href="/assets/safari-pinned-tab.svg" color="#fc4d50"><link rel="shortcut icon" href="/assets/favicon.ico"><meta name="msapplication-TileColor" content="#ffc40d"><meta name="msapplication-config" content="/assets/browserconfig.xml"><meta name="theme-color" content="#ffffff"><!-- end favicons snippet -->
<title>DefaultTsPayloadReaderFactory (ExoPlayer library)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../../../jquery/jquery-3.5.1.js"></script>
<script type="text/javascript" src="../../../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="DefaultTsPayloadReaderFactory (ExoPlayer library)";
        }
    }
    catch(err) {
    }
//-->
var data = {"i0":10,"i1":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../../../";
var useModuleDirectories = false;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">com.google.android.exoplayer2.extractor.ts</a></div>
<h2 title="Class DefaultTsPayloadReaderFactory" class="title">Class DefaultTsPayloadReaderFactory</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>com.google.android.exoplayer2.extractor.ts.DefaultTsPayloadReaderFactory</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="TsPayloadReader.Factory.html" title="interface in com.google.android.exoplayer2.extractor.ts">TsPayloadReader.Factory</a></code></dd>
</dl>
<hr>
<pre>public final class <span class="typeNameLabel">DefaultTsPayloadReaderFactory</span>
extends <a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>
implements <a href="TsPayloadReader.Factory.html" title="interface in com.google.android.exoplayer2.extractor.ts">TsPayloadReader.Factory</a></pre>
<div class="block">Default <a href="TsPayloadReader.Factory.html" title="interface in com.google.android.exoplayer2.extractor.ts"><code>TsPayloadReader.Factory</code></a> implementation.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="nested.class.summary">
<!--   -->
</a>
<h3>Nested Class Summary</h3>
<table class="memberSummary">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Class</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static interface&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="DefaultTsPayloadReaderFactory.Flags.html" title="annotation in com.google.android.exoplayer2.extractor.ts">DefaultTsPayloadReaderFactory.Flags</a></span></code></th>
<td class="colLast">
<div class="block">Flags controlling elementary stream readers' behavior.</div>
</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- =========== FIELD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#FLAG_ALLOW_NON_IDR_KEYFRAMES">FLAG_ALLOW_NON_IDR_KEYFRAMES</a></span></code></th>
<td class="colLast">
<div class="block">When extracting H.264 samples, whether to treat samples consisting of non-IDR I slices as
 synchronization samples (key-frames).</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#FLAG_DETECT_ACCESS_UNITS">FLAG_DETECT_ACCESS_UNITS</a></span></code></th>
<td class="colLast">
<div class="block">When extracting H.264 samples, whether to split the input stream into access units (samples)
 based on slice headers.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#FLAG_ENABLE_HDMV_DTS_AUDIO_STREAMS">FLAG_ENABLE_HDMV_DTS_AUDIO_STREAMS</a></span></code></th>
<td class="colLast">
<div class="block">Sets whether HDMV DTS audio streams will be handled.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#FLAG_IGNORE_AAC_STREAM">FLAG_IGNORE_AAC_STREAM</a></span></code></th>
<td class="colLast">
<div class="block">Prevents the creation of <a href="AdtsReader.html" title="class in com.google.android.exoplayer2.extractor.ts"><code>AdtsReader</code></a> and <a href="LatmReader.html" title="class in com.google.android.exoplayer2.extractor.ts"><code>LatmReader</code></a> instances.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#FLAG_IGNORE_H264_STREAM">FLAG_IGNORE_H264_STREAM</a></span></code></th>
<td class="colLast">
<div class="block">Prevents the creation of <a href="H264Reader.html" title="class in com.google.android.exoplayer2.extractor.ts"><code>H264Reader</code></a> instances.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#FLAG_IGNORE_SPLICE_INFO_STREAM">FLAG_IGNORE_SPLICE_INFO_STREAM</a></span></code></th>
<td class="colLast">
<div class="block">Prevents the creation of <a href="SectionPayloadReader.html" title="interface in com.google.android.exoplayer2.extractor.ts"><code>SectionPayloadReader</code></a>s for splice information sections
 (SCTE-35).</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#FLAG_OVERRIDE_CAPTION_DESCRIPTORS">FLAG_OVERRIDE_CAPTION_DESCRIPTORS</a></span></code></th>
<td class="colLast">
<div class="block">Whether the list of <code>closedCaptionFormats</code> passed to <a href="#%3Cinit%3E(int,java.util.List)"><code>DefaultTsPayloadReaderFactory(int, List)</code></a> should be used in spite
 of any closed captions service descriptors.</div>
</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">DefaultTsPayloadReaderFactory</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(int)">DefaultTsPayloadReaderFactory</a></span>&#8203;(int&nbsp;flags)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(int,java.util.List)">DefaultTsPayloadReaderFactory</a></span>&#8203;(int&nbsp;flags,
                             <a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../Format.html" title="class in com.google.android.exoplayer2" target="_top">Format</a>&gt;&nbsp;closedCaptionFormats)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code><a href="https://developer.android.com/reference/android/util/SparseArray.html" title="class or interface in android.util" class="externalLink">SparseArray</a>&lt;<a href="TsPayloadReader.html" title="interface in com.google.android.exoplayer2.extractor.ts" target="_top">TsPayloadReader</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createInitialPayloadReaders()">createInitialPayloadReaders</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the initial mapping from PIDs to payload readers.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="TsPayloadReader.html" title="interface in com.google.android.exoplayer2.extractor.ts">TsPayloadReader</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createPayloadReader(int,com.google.android.exoplayer2.extractor.ts.TsPayloadReader.EsInfo)">createPayloadReader</a></span>&#8203;(int&nbsp;streamType,
                   <a href="TsPayloadReader.EsInfo.html" title="class in com.google.android.exoplayer2.extractor.ts">TsPayloadReader.EsInfo</a>&nbsp;esInfo)</code></th>
<td class="colLast">
<div class="block">Returns a <a href="TsPayloadReader.html" title="interface in com.google.android.exoplayer2.extractor.ts"><code>TsPayloadReader</code></a> for a given stream type and elementary stream information.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a></h3>
<code><a href="https://developer.android.com/reference/java/lang/Object.html#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink">getClass</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang" class="externalLink">hashCode</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink">notifyAll</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang" class="externalLink">toString</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink" target="_top">wait</a></code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.detail">
<!--   -->
</a>
<h3>Field Detail</h3>
<a id="FLAG_ALLOW_NON_IDR_KEYFRAMES">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>FLAG_ALLOW_NON_IDR_KEYFRAMES</h4>
<pre>public static final&nbsp;int FLAG_ALLOW_NON_IDR_KEYFRAMES</pre>
<div class="block">When extracting H.264 samples, whether to treat samples consisting of non-IDR I slices as
 synchronization samples (key-frames).</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#com.google.android.exoplayer2.extractor.ts.DefaultTsPayloadReaderFactory.FLAG_ALLOW_NON_IDR_KEYFRAMES">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a id="FLAG_IGNORE_AAC_STREAM">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>FLAG_IGNORE_AAC_STREAM</h4>
<pre>public static final&nbsp;int FLAG_IGNORE_AAC_STREAM</pre>
<div class="block">Prevents the creation of <a href="AdtsReader.html" title="class in com.google.android.exoplayer2.extractor.ts"><code>AdtsReader</code></a> and <a href="LatmReader.html" title="class in com.google.android.exoplayer2.extractor.ts"><code>LatmReader</code></a> instances. This flag should
 be enabled if the transport stream contains no packets for an AAC elementary stream that is
 declared in the PMT.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#com.google.android.exoplayer2.extractor.ts.DefaultTsPayloadReaderFactory.FLAG_IGNORE_AAC_STREAM">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a id="FLAG_IGNORE_H264_STREAM">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>FLAG_IGNORE_H264_STREAM</h4>
<pre>public static final&nbsp;int FLAG_IGNORE_H264_STREAM</pre>
<div class="block">Prevents the creation of <a href="H264Reader.html" title="class in com.google.android.exoplayer2.extractor.ts"><code>H264Reader</code></a> instances. This flag should be enabled if the
 transport stream contains no packets for an H.264 elementary stream that is declared in the
 PMT.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#com.google.android.exoplayer2.extractor.ts.DefaultTsPayloadReaderFactory.FLAG_IGNORE_H264_STREAM">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a id="FLAG_DETECT_ACCESS_UNITS">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>FLAG_DETECT_ACCESS_UNITS</h4>
<pre>public static final&nbsp;int FLAG_DETECT_ACCESS_UNITS</pre>
<div class="block">When extracting H.264 samples, whether to split the input stream into access units (samples)
 based on slice headers. This flag should be disabled if the stream contains access unit
 delimiters (AUDs).</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#com.google.android.exoplayer2.extractor.ts.DefaultTsPayloadReaderFactory.FLAG_DETECT_ACCESS_UNITS">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a id="FLAG_IGNORE_SPLICE_INFO_STREAM">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>FLAG_IGNORE_SPLICE_INFO_STREAM</h4>
<pre>public static final&nbsp;int FLAG_IGNORE_SPLICE_INFO_STREAM</pre>
<div class="block">Prevents the creation of <a href="SectionPayloadReader.html" title="interface in com.google.android.exoplayer2.extractor.ts"><code>SectionPayloadReader</code></a>s for splice information sections
 (SCTE-35).</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#com.google.android.exoplayer2.extractor.ts.DefaultTsPayloadReaderFactory.FLAG_IGNORE_SPLICE_INFO_STREAM">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a id="FLAG_OVERRIDE_CAPTION_DESCRIPTORS">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>FLAG_OVERRIDE_CAPTION_DESCRIPTORS</h4>
<pre>public static final&nbsp;int FLAG_OVERRIDE_CAPTION_DESCRIPTORS</pre>
<div class="block">Whether the list of <code>closedCaptionFormats</code> passed to <a href="#%3Cinit%3E(int,java.util.List)"><code>DefaultTsPayloadReaderFactory(int, List)</code></a> should be used in spite
 of any closed captions service descriptors. If this flag is disabled, <code>
 closedCaptionFormats</code> will be ignored if the PMT contains closed captions service descriptors.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#com.google.android.exoplayer2.extractor.ts.DefaultTsPayloadReaderFactory.FLAG_OVERRIDE_CAPTION_DESCRIPTORS">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a id="FLAG_ENABLE_HDMV_DTS_AUDIO_STREAMS">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>FLAG_ENABLE_HDMV_DTS_AUDIO_STREAMS</h4>
<pre>public static final&nbsp;int FLAG_ENABLE_HDMV_DTS_AUDIO_STREAMS</pre>
<div class="block">Sets whether HDMV DTS audio streams will be handled. If this flag is set, SCTE subtitles will
 not be detected, as they share the same elementary stream type as HDMV DTS.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../constant-values.html#com.google.android.exoplayer2.extractor.ts.DefaultTsPayloadReaderFactory.FLAG_ENABLE_HDMV_DTS_AUDIO_STREAMS">Constant Field Values</a></dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a id="&lt;init&gt;()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DefaultTsPayloadReaderFactory</h4>
<pre>public&nbsp;DefaultTsPayloadReaderFactory()</pre>
</li>
</ul>
<a id="&lt;init&gt;(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DefaultTsPayloadReaderFactory</h4>
<pre>public&nbsp;DefaultTsPayloadReaderFactory&#8203;(<a href="DefaultTsPayloadReaderFactory.Flags.html" title="annotation in com.google.android.exoplayer2.extractor.ts">@Flags</a>
                                     int&nbsp;flags)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>flags</code> - A combination of <code>FLAG_*</code> values that control the behavior of the created
     readers.</dd>
</dl>
</li>
</ul>
<a id="&lt;init&gt;(int,java.util.List)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>DefaultTsPayloadReaderFactory</h4>
<pre>public&nbsp;DefaultTsPayloadReaderFactory&#8203;(<a href="DefaultTsPayloadReaderFactory.Flags.html" title="annotation in com.google.android.exoplayer2.extractor.ts">@Flags</a>
                                     int&nbsp;flags,
                                     <a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../Format.html" title="class in com.google.android.exoplayer2" target="_top">Format</a>&gt;&nbsp;closedCaptionFormats)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>flags</code> - A combination of <code>FLAG_*</code> values that control the behavior of the created
     readers.</dd>
<dd><code>closedCaptionFormats</code> - <a href="../../Format.html" title="class in com.google.android.exoplayer2"><code>Format</code></a>s to be exposed by payload readers for streams with
     embedded closed captions when no caption service descriptors are provided. If
     <a href="#FLAG_OVERRIDE_CAPTION_DESCRIPTORS"><code>FLAG_OVERRIDE_CAPTION_DESCRIPTORS</code></a> is set, <code>closedCaptionFormats</code> overrides
     any descriptor information. If not set, and <code>closedCaptionFormats</code> is empty, a
     closed caption track with <a href="../../Format.html#accessibilityChannel"><code>Format.accessibilityChannel</code></a> <a href="../../Format.html#NO_VALUE"><code>Format.NO_VALUE</code></a> will
     be exposed.</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a id="createInitialPayloadReaders()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createInitialPayloadReaders</h4>
<pre class="methodSignature">public&nbsp;<a href="https://developer.android.com/reference/android/util/SparseArray.html" title="class or interface in android.util" class="externalLink">SparseArray</a>&lt;<a href="TsPayloadReader.html" title="interface in com.google.android.exoplayer2.extractor.ts" target="_top">TsPayloadReader</a>&gt;&nbsp;createInitialPayloadReaders()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="TsPayloadReader.Factory.html#createInitialPayloadReaders()">TsPayloadReader.Factory</a></code></span></div>
<div class="block">Returns the initial mapping from PIDs to payload readers.
 <p>
 This method allows the injection of payload readers for reserved PIDs, excluding PID 0.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="TsPayloadReader.Factory.html#createInitialPayloadReaders()">createInitialPayloadReaders</a></code>&nbsp;in interface&nbsp;<code><a href="TsPayloadReader.Factory.html" title="interface in com.google.android.exoplayer2.extractor.ts">TsPayloadReader.Factory</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A <a href="https://developer.android.com/reference/android/util/SparseArray.html" title="class or interface in android.util" class="externalLink" target="_top"><code>SparseArray</code></a> that maps PIDs to payload readers.</dd>
</dl>
</li>
</ul>
<a id="createPayloadReader(int,com.google.android.exoplayer2.extractor.ts.TsPayloadReader.EsInfo)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>createPayloadReader</h4>
<pre class="methodSignature">@Nullable
public&nbsp;<a href="TsPayloadReader.html" title="interface in com.google.android.exoplayer2.extractor.ts">TsPayloadReader</a>&nbsp;createPayloadReader&#8203;(int&nbsp;streamType,
                                           <a href="TsPayloadReader.EsInfo.html" title="class in com.google.android.exoplayer2.extractor.ts">TsPayloadReader.EsInfo</a>&nbsp;esInfo)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="TsPayloadReader.Factory.html#createPayloadReader(int,com.google.android.exoplayer2.extractor.ts.TsPayloadReader.EsInfo)">TsPayloadReader.Factory</a></code></span></div>
<div class="block">Returns a <a href="TsPayloadReader.html" title="interface in com.google.android.exoplayer2.extractor.ts"><code>TsPayloadReader</code></a> for a given stream type and elementary stream information.
 May return null if the stream type is not supported.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="TsPayloadReader.Factory.html#createPayloadReader(int,com.google.android.exoplayer2.extractor.ts.TsPayloadReader.EsInfo)">createPayloadReader</a></code>&nbsp;in interface&nbsp;<code><a href="TsPayloadReader.Factory.html" title="interface in com.google.android.exoplayer2.extractor.ts">TsPayloadReader.Factory</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>streamType</code> - Stream type value as defined in the PMT entry or associated descriptors.</dd>
<dd><code>esInfo</code> - Information associated to the elementary stream provided in the PMT.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A <a href="TsPayloadReader.html" title="interface in com.google.android.exoplayer2.extractor.ts"><code>TsPayloadReader</code></a> for the packet stream carried by the provided pid, or
     <code>null</code> if the stream is not supported.</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
</footer>
</body>
</html>
